home *** CD-ROM | disk | FTP | other *** search
/ The X-Philes (2nd Revision) / The X-Philes Number 1 (1995).iso / xphiles / hp48hor2 / xmenu.doc < prev    next >
Internet Message Format  |  1995-03-31  |  4KB

  1. From: akcs.softcalc@hpcvbbs.cv.hp.com (brian maguire) 
  2. Date: Wed, 30 Dec 1992 17:40:03 GMT 
  3. Subject: HP48: XMENU version 1.03 
  4. Message-ID: <2b41d4f1.5070comp.sys.handhelds@hpcvbbs.cv.hp.com> 
  5. Newsgroups: comp.sys.handhelds 
  6.  
  7. ************************************************************ 
  8. **                                                        ** 
  9. **              XMENU - Menu Expander 1.03                ** 
  10. **                                                        ** 
  11. **             Copyright 1992 Brian Maguire               ** 
  12. **                  All Right Reserved                    ** 
  13. **                                                        ** 
  14. ************************************************************ 
  15.  
  16. The expanded menu program displays a menu using as many as 
  17. four rows at a time with the top four rows of keys 
  18. corresponding to each row of menu labels.  This will 
  19. normally be enough to display all rows of a built-in menu. 
  20. If a menu contains more than four rows, a scroll indicator 
  21. will be displayed in the status area.  Pressing ENTER will 
  22. advance the menu screen one page.  Likewise, [ORANGE]- 
  23. ENTER will decrement the menu screen one page. 
  24.  
  25. Pressing a key in the top four rows that corresponds to a 
  26. menu label will immediately evaluate that menu item. 
  27. Pressing any non-menu key will cause the 48 to beep. 
  28. Pressing [ON] exits XMENU. 
  29.  
  30. Menu tree structures are supported.  When a menu key 
  31. creates a different menu, it is nested below the parent 
  32. menu.  Pressing [+/] will exit the sub-menu and restore 
  33. the calling parent menu.  Likewise, pressing [BLUE]-[+/-] 
  34. will exit all sub-menus and restore the top most menu. 
  35.  
  36. Because the VAR menu is unique in the fact that the 
  37. contents of the menu can change by moving into a sub- 
  38. directory, but the menu definition doesn't actually 
  39. change, UPDIR has been assigned to [ORANGE]-[+/-]. 
  40.  
  41. In addition to the menu display, XMENU also displays as 
  42. many line of the stack as possible using the medium font 
  43. size.  A total of six lines are used for both the menu and 
  44. stack.  If the menu only uses two lines, four will be used 
  45. for the stack, etc. 
  46.  
  47. Most menus are defined by a list or by a program that 
  48. generates a list.  This data list is used by the built-in 
  49. menu commands to load the "touch table" (menu key bindings). 
  50. But several menus, like the VAR menu, are not defined by a 
  51. list.  Instead, they load the touch table themselves, on 
  52. the fly.  Because it is difficult to determine how many 
  53. display lines will be needed for these menus, XMENU always 
  54. allocates four.  The only built-in menus that are forced 
  55. to four display lines are VAR, LIBRARY, PORT0, PORT1, 
  56. PORT2, and any library's menu. 
  57.  
  58. The following criteria was used when writing this program 
  59.  
  60. 1) Self contained 
  61.       XMENU had to be a self standing program, not a library 
  62.       or a directory. 
  63.  
  64. 2) Minimal amount of time writing 
  65.       I don't really have much free time so I tried to keep 
  66.       it simply.  Very little time was spend trying to pack 
  67.       the code.  I did try to document it enough so someone 
  68.       who is familiar with RPL can follow it though. 
  69.  
  70. DISCLAIMERS 
  71.  
  72. XMENU is presented without warranties, expressed or 
  73. implied.  The author makes no guarantee as to the fitness 
  74. of this software. 
  75.  
  76. XMENU can be copied freely provided the software is copied 
  77. in its entirety.  The user cannot be charged, in whole or 
  78. in part, except for the cost of reproduction.  No part of 
  79. this package may be used for commercial purposes or as 
  80. part of third party software (commercial or public), 
  81. without written permission from the author. 
  82.  
  83. ACKNOWLEDGEMENTS: 
  84.  
  85.  Thanks to Conan J. Fee whose XPNDR program inspired me to 
  86.  finish writing XMENU and Detlef Muller for his 
  87.  participation in writing XPNDR. 
  88.  
  89.  Also, thanks to Todd Eckrich for his help in debugging. 
  90.